Methods and apparatuses for data transmission

ABSTRACT

In an embodiment, a communication device is provided comprising transmit circuitry and crosstalk reduction circuitry. In an embodiment, the crosstalk reduction circuitry is configured to receive crosstalk information indicative of crosstalk between a plurality of communication connections for only a part of communication channels of said communication connections.

BACKGROUND

So-called vectoring or vectored data transmission is a technique forcoordinated transmission or reception of data from a plurality oftransmitters to a plurality of receivers via a plurality ofcommunication connections in order to improve the transmission, forexample to reduce the influence of crosstalk. Either transmitters orreceivers are co-located.

For example, in DSL (digital subscriber line) transmission systems, forexample VDSL (very high bit rate DSL) transmission systems, data may betransmitted from a central office (CO) or other provider equipment to aplurality of receivers located in different locations, for example incustomer premises (CPE), via a plurality of communication lines.Crosstalk resulting from signals on different lines transmitted in thesame direction, also referred to as far end crosstalk (FEXT), may resultin a reduced data throughput. Through vectoring, signals transmittedover the plurality of communication lines from the central office orreceived via the plurality of communication lines in the central officemay be processed jointly in order to reduce such crosstalk, which jointprocessing corresponds to the above-mentioned vectoring. In thisrespect, the reduction of crosstalk by coordinated transmission ofsignals is sometimes referred to as crosstalk precompensation, whereasthe reduction of crosstalk through joint processing of the receivedsignals is sometimes referred to as crosstalk cancellation. Thecommunication connections which are processed jointly are sometimesreferred to as vectored group.

For this kind of crosstalk reduction, for example in an initializationphase of the data transmission system or during operation of the datatransmission system, parameter describing the crosstalk between thecommunication connections are obtained and the crosstalk reduction isperformed based on these parameters. The number of such parametersincreases with increasing number of communication lines or othercommunication connections which are to be processed. This maynecessitate the transmission and processing of comparatively largeamounts of data.

SUMMARY

According to an embodiment, a method is provided comprising:

-   transmitting training signals via a plurality of communication    channels of a plurality of communication connections,-   receiving crosstalk information indicative of crosstalk between said    plurality of communication connections for only a part of said    communication channels.

The above summary is merely intended to give a brief overview of somefeatures of some embodiments of the present invention, and otherembodiments may comprise additional and/or different features than theones mentioned above. Furthermore, while above an embodiment of a methodis mentioned, other embodiments may relate to systems or devices.Therefore, this summary is not to be construed as limiting the scope ofthe present application.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 shows a block diagram illustrating the basic structure of acommunication system according to an embodiment of the presentinvention,

FIG. 2 shows a block diagram illustrating some features of acommunication system according to an embodiment of the presentinvention,

FIG. 3 shows a flow diagram illustrating a method according to anembodiment of the present invention,

FIG. 4 shows a block diagram illustrating some features of acommunication system according to an embodiment of the presentinvention,

FIG. 5 shows a flow diagram illustrating a method according to anembodiment of the present invention,

FIG. 6 shows graphs illustrating a crosstalk transfer function in acommunication system according to an embodiment,

FIG. 7 shows a graph illustrating crosstalk precompensation coefficientsin an embodiment of a communication system according to the presentinvention,

FIG. 8 shows an interpolation filter structure according to anembodiment of the present invention,

FIG. 9 shows an example for an impulse response of the interpolationfilter structure of FIG. 8,

FIG. 10 shows an interpolation filter structure according to anotherembodiment of the present invention,

FIG. 11 shows an impulse response of an interpolation filter accordingto an embodiment of the present invention,

FIG. 12 shows a graph for illustrating some features of an embodiment ofthe present invention,

FIG. 13 shows a graph for illustrating some features of an embodiment ofthe present invention,

FIGS. 14A and 14B are graphs illustrating impulse responses ofinterpolation filters according to an embodiment of the presentinvention, and

FIGS. 15A to 15C illustrate impulse responses of interpolation filtersaccording to another embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

In the following, some embodiments of the present invention will bedescribed in detail. It is to be understood that the followingdescription is given only for the purpose of illustration and is not tobe taken in a limiting sense. The scope of the invention is not intendedto be limited by the embodiments described hereinafter with reference tothe accompanying drawings, but is to be intended only to be limited bythe appended claims and equivalents thereof.

It is also to be understood that in the following description ofembodiments any direct connection or coupling between functional blocks,devices, components, circuit elements or other physical or functionalunits shown in the drawings or described herein, i.e. any connectionwithout intervening elements could also be implemented by an indirectconnection or coupling, i.e. a connection or coupling with one or moreintervening elements. Furthermore, it should appreciated that functionalblocks or units shown in the drawings may be implemented as separatecircuits in embodiments, but may also be fully or partially implementedin a common circuit in other embodiments. It is further to be understoodthat any connection which is described as being wire-based in thefollowing specification may also be implemented as a wirelesscommunication unless noted to the contrary.

It should be noted that the drawings are provided to give anillustration of some aspects of embodiments of the present invention andtherefore are to be regarded as schematic only. In particular, theelements shown in the drawings are not necessary to scale with eachother, and the placement of various elements in the drawings is chosento provide a clear understanding of the respective embodiment and is notto be construed as necessarily being a representation of the actualrelative locations of the various components in implementationsaccording to an embodiment of the invention.

The features of the various embodiments described herein may be combinedwith each other unless specifically noted otherwise.

The term “communication connection” as used herein is intended to referto any kind of communication connection including wire-basedcommunication connections and wireless communication connections.

The term “communication channel” as used herein is intended to refer toa communication channel on a communication connection, wherein on asingle communication connection a plurality of communication channelsmay be present. For example, in DSL communication on a single wirelinedata is transmitted on a plurality of carriers having differentfrequencies, these carriers also being referred to as “tones”. Suchcarriers or tones are examples for communication channels for the caseof DSL data transmission. Another example for a communication channel isa logic channel which may be used for transmitting specific kinds ofdata, for example control information, wherein such a logic channel mayuse one or more of the above-mentioned carriers or tones in DSLcommunication.

Turning now to the Figures, in a communication system shown in FIG. 1, acommunication device 10 communicates with communication devices 16, 17,18 and 19 via respective communication connections 12, 13, 14 and 15.While in FIG. 1 four communication devices 16, 17, 18 and 19 are shown,in other embodiments any suitable other number of communication devicesmay also be provided.

In an embodiment, the communication via communication connections 12,13, 14 and 15 is a bidirectional communication. In such an embodiment,communication device 10 may comprise a transceiver for each of thecommunication connections 12, 13, 14 and 15, and each communicationdevice 16, 17, 18 and 19 also may comprise a transceiver. In anotherembodiment, all or some of communication connections 12, 13, 14 and 15may be unidirectional communication connections. In another embodiment,all or some of the communication devices 16, 17, 18, 19 might beco-located.

In the embodiment of FIG. 1, couplings between the communicationconnections 12-15 may cause crosstalk, for example if some or all of thecommunication connections are wire lines running close to each other.Through at least partial joint processing of the signals transmittedfrom communication device 10 to communication devices 16, 17, 18 and 19and through at least partial joint processing of signals received fromcommunication devices 16, 17, 18 and 19 at communication device 10 in acrosstalk reduction unit 11, the influence of such crosstalk may bereduced. As already mentioned, the joint processing for crosstalkreduction is also referred to as vectoring, and the communicationconnections which are subjected to such a crosstalk reduction are alsoreferred to as vectored group.

In the following, the transmission direction from communication device10 to communication devices 16, 17, 18 and 19 will be referred to asdownstream direction, and the opposite transmission direction fromcommunication devices 16, 17, 18 and 19 to communication device 10 willbe referred to as upstream direction. Reduction of crosstalk in thedownstream direction is also referred to as crosstalk precompensationsince the signals transmitted are modified before transmission, i.e.before the actual crosstalk occurs, whereas the reduction of crosstalkin the upstream direction is also referred to as crosstalk cancellationas here through joint processing in crosstalk reduction unit 11 thecrosstalk is reduced or cancelled after it has occurred.

In embodiments, crosstalk cancellation may for example be performed bycalculating received signals for each communication connection dependingon a linear combination of all received signals on all communicationconnections of the vectored group, and crosstalk precompensation may beperformed by calculating signals to be transmitted via eachcommunication connection depending on a linear combination of signals tobe transmitted on all communication connections. However, othercalculation methods, for example non-linear calculations, are alsopossible.

In order to perform this crosstalk reduction, i.e. the vectoring, thecrosstalk reduction unit 11 has to be “trained”, i.e. the crosstalkreduction unit 11 needs information regarding the actual crosstalkoccurring between the communication connections in the vectored group.This may for example be achieved by transmitting predetermined trainingsignals, for example pilot signals, via the communication connectionsand analyzing the received signals to determine the crosstalk. Inembodiments, data transmission via the communication connectionscomprises the transmission of pilot signals or symbols, wherein betweenthe pilot signals other data like payload data may be transmitted. In anembodiment, the pilot signals or modified pilot signals are used fortraining crosstalk reduction unit 11. In an embodiment, synchronizationsignals or synchronization symbols may be used as pilot signals.However, other training signals may also be used.

In an embodiment, some or all of the communication connections 12-15 ofFIG. 1 comprise a plurality of communication channels. In an embodiment,for training in the downstream direction, communication device 10transmits the above-mentioned training signals on all communicationchannels of communication lines 12-15 to communication devices 16-19.Communication devices 16-19 then return error signals indicative of adeviation between the received training signals and the sent trainingsignals back to communication device 10. Based on these error signals,crosstalk reduction unit 11 calculates first crosstalk reductionparameters for the downstream direction, which may also be referred toas first crosstalk precompensation parameters or crosstalkprecompensation coefficients, for a first subset of the communicationchannels based on the error signals. The error signals constitutecrosstalk information indicative of the crosstalk occurring between thecommunication channels of the communication connections 12-15. Then, inan embodiment, crosstalk reduction unit 11 calculates second crosstalkprecompensation parameters for a second subset of the communicationchannels which may comprise all communication channels not comprised inthe first subset based on the first crosstalk precompensationparameters. It should be noted that in an embodiment communicationdevices 16-19 may send back error information only for the communicationchannels of the first subset. However, in another embodiment errorinformation for all communication channels or for communication channelsof the first subset and some additional communication channels may betransmitted to communication device 10.

In another embodiment, for the upstream direction crosstalk reductionparameters, which in this case may also be referred to as crosstalkcancellation parameters, may be determined in a similar manner. In thiscase, in an embodiment communication devices 16 to 19 transmit trainingsignals to communication device 10, error signals are determined incommunication device 10, first crosstalk cancellation parameters for afirst subset of communication channels used in the upstream directionare determined based on the error signals, and crosstalk cancellationparameters for a second subset of the communication channels which maycomprise those communication channels not comprised by the first subsetare determined based on the first crosstalk cancellation parameters.

It should be noted that in many cases the communication channels and thedownstream direction will be different from the communication channelsin the upstream direction. For example, in DSL communication thecommunication channels in the downstream direction may use (a) differentfrequency range(s) than the communication channels in the upstreamdirection. Therefore, in such cases the first and second subsets in thedownstream direction also differ from the first and second subset in theupstream direction.

It should be noted that in an embodiment the crosstalk reductionparameters are determined before determining the crosstalk cancellationparameters. In another embodiment, this order is reversed, and thecrosstalk cancellation parameters are determined before determining thecrosstalk reduction parameters. In still another embodiment, thecrosstalk cancellation parameters and the crosstalk precompensationparameters may be determined simultaneously.

Next, with reference to FIGS. 2 to 5, embodiments of DSL (digitalsubscriber line) communication systems and methods implemented thereinwill be described. Such communication systems may for example be VDSL2communication systems.

In FIG. 2, a communication system according to an embodiment of thepresent invention is shown transmitting data in the downstreamdirection. It should be noted that the system of FIG. 2 shows only oneof several possible implementations and is therefore not to be construedas limiting. In the system shown in FIG. 2, data is transmitted from acentral office (CO) 20 via a plurality of communication lines of whichtwo communication lines 22, 23 are shown to a plurality of receivers incustomer premises equipment (CPE) generally denoted 21. In the system ofFIG. 2, the communication lines are joined in a so-called cable binder25. Communication lines in a cable binder are usually locatedcomparatively close to each other and are therefore prone to crosstalk.In the system shown in FIG. 2, communication lines 22 and 23 as well asfurther (not shown) communication lines indicated by dotted lines areincorporated in a vectored group, i.e. for these communication linescrosstalk precompensation is performed at central office 20 as will bedescribed in more detail below. It should be noted that the number ofcommunication lines in the vectored group is not limited to anyparticular number.

In the system of FIG. 2, symbol mappers denoted with reference numerals26, 27 map data, for example payload or training data, onto carrierconstellations, i.e. a plurality of carriers each having its ownfrequency range, or, in other words, a plurality of channels, which arethan to be transmitted via communication lines 22, 23, respectively. Acrosstalk precompensator 24 which is an example for crosstalk reductioncircuitry modifies these symbol mappings in order to precompensatecrosstalk occurring during the transmission. This precompensation in anembodiment uses precompensation coefficients. For example, the symbolsfor the communication lines for each channel, i.e. each frequency, maybe written as a vector which in crosstalk precompensator 24 ismultiplied with a matrix containing the crosstalk precompensationcoefficients.

The such modified carrier mappings are modulated onto a plurality ofcarriers for each communication line, said carriers as mentioned abovehaving different frequencies, and are then transferred into signals inthe time domain by inverse fast Fourier transformations 28 and 29,respectively. This type of modulation using a plurality of carriers isalso referred to as discrete multitone modulation (DMT) and as commonlyused in DSL systems like VDSL systems or VDSL2 systems. The suchgenerated signals are then transmitted via the communication lines inthe cable binder 25 to the customer premises 21. The received signalsare then converted into the frequency domain by fast Fouriertransformers 30 and 31, respectively and equalized by frequencyequalizers 32, 33, respectively before slicers 34, 35, respectivelyoutput received constellations which, in case of an error-freetransmission, correspond to input constellations generated in symbolmappers 26, 27 originally intended for transmission. It is to beunderstood that for clarity's sake only some elements of thecommunication devices involved and the corresponding transmit andreceive circuitry are shown, and further elements like amplifiers,sampling units or analog to digital converters may be present.

In the system of FIG. 2, for some of the above-mentioned channels theprecompensation coefficients are stored in a memory 36 of precompensator24. For example, the precompensation coefficients of every N_(int)-thchannel, for example of every fourth channel, every eighth channel,every thirty second channel, every fortieth channel etc. may be stored.An interpolator 37 of crosstalk precompensator 24 is used in the systemof FIG. 2 to determine the precompensation coefficients of the remainingchannels by interpolation. Examples for implementations of interpolator37 will be described later.

The channels for which precompensation coefficients are stored in memory36 will be referred to as first subset of channels in the following,while the channels for which the precompensation coefficients areobtained by interpolator 37 will be referred to as second subset ofchannels.

For determining the precompensation coefficients for the first subset ofchannels which are then stored in memory 36, in the embodiment shown inFIG. 2 predetermined training symbols according to a predeterminedtraining sequence are sent from central office 22 to customer premises21. Customer premises equipment 21, for example a processor 40 servingas calculation circuitry, then determines an error signal e whichdescribes the difference between the received symbols and the sentsymbols (which are known to customer premises 21 since predetermined,i.e. known, training sequences are used) and are sent back via aso-called back channel 39 to central office 20. It should be noted thatin other embodiments, customer premises equipment 21 may calculatecorrelations between transmitted and received signals and transmit thecorrelation values instead of or in addition to the error signal e. Instill other embodiments, instead of using known training sequences errorsignal e is determined based on unknown training or other data using forexample the so-called slicer error. The back channel 39 may use one ormore communication channels of the upstream direction which will beexplained later with reference to FIG. 4. In other implementations, theerror information may be incorporated in data packets sent in theupstream direction. A processor 38, for example a digital signalprocessor, of crosstalk precompensator 24 then calculates theprecompensation coefficients for the first subset of channels.

It should be noted that interpolator 37 in some embodiments need not bea separate unit, but may be implemented by processor 38, for example byprogramming processor 38 accordingly.

Turning now to FIG. 3, a flow diagram is shown illustrating a methodaccording to an embodiment of the present invention. The methodillustrated in FIG. 3 for example may be implemented in the system ofFIG. 2, but is not limited thereto and may also be implemented in othersystems.

At 40 a, training sequences, i.e. sequences of training data, aretransmitted from a central office (CO) to customer premisesequipment(CPE). Additionally, at 40 a before, after and/or whiletransmitting the training sequences to the CPE, in an embodimentadditionally information indicating which channels, for example whichcarriers in case of DSL transmission, are assigned to a first subset ofchannels may be transmitted to the CPE. This information may also bereferred to as a frequency grid.

At 41, errors or other information indicative of the crosstalk arecalculated at the customer's premises for a first subset ofcommunication channels, these errors describing a deviation between thetraining sequence as received by the customer premises equipment and thetraining sequence as transmitted by the central office. In other words,the calculated errors are indicative of crosstalk experienced by thetraining sequences during transmission from central office to customer'spremises.

At 42 these calculated errors are then transmitted from the customer'spremises to the central office.

At 43, at the central office precompensation coefficients are determinedfor the first subset of communication channels based on the calculatederrors.

At 44, precompensation coefficients for a second subset of communicationchannels are determined based on the precompensation coefficients forthe first subset of channels, for example by interpolation. The firstsubset and second subset together may make up all vectored communicationchannels, i.e. each vectored communication channel in such a casebelongs either to the first subset and the second subset.

Next, a communication system according to an embodiment of the presentinvention transmitting data in the upstream direction will be discussedwith reference to FIGS. 4 and 5. It should be noted that thecommunication system shown in FIG. 4 may be the same communicationsystem as shown in FIG. 2, in which case the Communication system allowsfor bidirectional communication, i.e. communication both in the upstreamdirection and in the downstream direction. In other embodiments, thecommunication systems of FIG. 2 and FIG. 4 may be seen as separateembodiments, one operating in the downstream direction and the otheroperating in the upstream direction. As the system of FIG. 2, the systemof FIG. 4 shows only one possible implementation, and otherimplementations are equally possible.

In FIG. 4, on the side of customer premises equipment 21, symbol mappers57 and 58 are provided to map symbols onto carrier constellationscorresponding to a plurality of carriers or channels on each ofcommunication lines 50, 51, which again are lines of a vectored groupand representative of any arbitrary number of lines. It should be notedthat in a bidirectional DSL system, lines 50, 51 of FIG. 4 may beidentical to lines 22, 23 of FIG. 2, wherein different frequencies, i.e.different channels, are used for upstream direction and for downstreamdirection. The symbols are then transferred to the time domain byinverse fast Fourier transformers 59, 60, respectively, or, in otherwords, also in case of the embodiment of FIG. 4 discrete multitonemodulation (DMT) is used. The signals are then transmitted in theupstream direction via a cable binder 25 and, in the central office, aretransferred into the frequency domain by fast Fourier transformers 61,62, respectively. A crosstalk canceller 52 is used to cancel crosstalkoccurring between the lines in cable binder 25. It should be noted thatcrosstalk canceller 52 may fully or partially be implemented using thesame circuit elements as crosstalk precompensator 24, for example byusing a common digital signal processor, common interpolation circuitryand/or a common memory, but also maybe implemented using separateelements. Similar to what has already been described with reference toFIG. 2, in central office frequency equalizers 63, 64 followed byslicers 65, 66 are provided to recover received symbols which in case oferror-free transmission correspond to the symbols originally sent.

The crosstalk cancellation performed in crosstalk canceller 52 may beperformed in a similar manner as the crosstalk pre-compensation, i.e.the symbols output by Fast Fourier transformer 61, 62 may be seen as avector which in an embodiment is multiplied with a matrix of crosstalkcancellation coefficients. In the embodiment of FIG. 4, first crosstalkcancellation coefficients for a first subset of channels used in theupstream direction may be stored in memory 53, and second crosstalkcancellation coefficients for the remaining channels which form a secondsubset may be determined by interpolation of the first crosstalkcancellation coefficients using interpolator 54. The operations forcrosstalk cancellation may be performed by processor 55. Similar to whathas been described with reference to FIG. 2, in the embodiment of FIG. 4interpolator 54 may be incorporated in processor 55, for example in theform of routines or other specific programming of processor 55.

In order to obtain the first cancellation coefficient for the firstsubset of channels, in the embodiment of FIG. 4 customer premisesequipment 21 transmit known test sequences of symbols to central office20. An error signal e is then calculated and fed back to crosstalkcanceller 52 via a feedback line 56 within central office 20. In theembodiment of FIG. 4, with an element 67 the frequency equalizationperformed in element 63, 64 is reversed, although this is not mandatoryand may be omitted in other embodiments. It should be noted while asingle feedback line 56 is depicted in FIG. 4, separate feedback linesfor each communication line involved may be used. In the embodiment ofFIG. 4, error signal e is calculated only for the first subset ofchannels, although in other embodiments error signal e may be calculatedfor the first subset of channels and for some additional channels or forall channels.

Turning now to FIG. 5, a flow diagram illustrating a method according toan embodiment of the present invention is shown which may be implementedin the system of FIG. 4, but is not limited thereto and may beimplemented also in other systems.

At 70, training sequences are transmitted from customer premisesequipment to a central office via a plurality of communication channels,for example communication lines, wherein on at least some of thecommunication lines a plurality of communication channels each having apredetermined frequency is used.

At 71, based on the signals received at the central office, errors orother information indicative of crosstalk are calculated for a firstsubset of channels.

At 72, first cancellation coefficients usable for crosstalk cancellationare determined for the first subset of channels based on the calculatederrors. The first subset of channels may for example comprise everyN_(int)-th channel, for example every fourth channel, every eighthchannel, every thirty second channel, although any number may be used.

At 73, second cancellation coefficients are determined for a secondsubset of channels based on the first cancellation coefficients for thefirst subset of channels, for example using interpolation. The secondsubset of channels may comprise all channels not comprised by the firstsubset of channels, i.e. in an embodiment each channel is either achannel of the first subset of channels or a channel of the secondsubset of channels.

It should be noted that the embodiments of methods described withreference to FIGS. 3 and 5 and also the systems of FIGS. 2 and 4 serveonly as examples, and many modifications and variations are possiblewithout departing from the scope of the present invention. For example,while it has been described that errors are calculated only for a firstsubset of channels, in other embodiments errors may be calculated forall channels, while precompensation or cancellation coefficients arestill determined only for a first subset of channels. It is alsopossible in another embodiment that the training sequences are onlytransmitted for the channels of the first subset. The channels of thesecond subset in such a case could, but need not, receive different data(as for example payload data or control information or training signalsfor other purposes than crosstalk cancellation) at the same time.Furthermore, while for the above embodiments it has been described thatonly the precompensation or cancellation coefficients for the firstsubset of channels are stored in a memory like memory 36 of FIG. 2 ormemory 53 of FIG. 4, in another embodiment after the coefficients forthe first subset of channels and the second subset of channels have beencalculated, all coefficients are stored in a memory.

Next, some embodiments for the interpolation mentioned above, forexample the determination of the second coefficients for the secondsubset of channels based on the first coefficients of the first subsetof channels or for the functioning of interpolators 37 and 54 will bediscussed.

In FIG. 6, far-end crosstalk (FEXT) transfer functions are shown whichrepresent the worst case for a simulation performed for one so-calledvictim line of 250 m length experiencing crosstalk from 23 furtherlines. The FEXT transfer function is a measure of the crosstalktransferred from one line of the other. In FIG. 6, this function isdepicted for three distinct frequency regions 84, 85, 86 whichcorrespond to frequency regions used for downstream channels in VDSL2data transmission. These frequency regions in the example shown arediscontinuous, and between the regions for example frequency regions forupstream data transmission may be situated. In FIG. 6, the functions areplotted over the channel number, wherein each channel in the exampleshown is 8.625 kHz wide.

Generally, the FEXT transfer function is a complex function. Complexnumbers may be represented as magnitude (also referred to as amplitude)and phase, or as real part and imaginary part, wherein realpart=magnitude·cosine (phase) and imaginary part=magnitude·sine (phase).In the upper two diagrams, a curve 80 shows the magnitude of the FEXTtransfer function, and a curve 81 shows the phase of the FEXT transferfunctions. In the lower two graphs, a curve 82 shows the real part ofthe FEXT transfer function, and a curve 83 shows the imaginary part ofthe FEXT transfer function.

As can be seen, in particular in the representation of real part andimaginary part, i.e. curves 82 and 83, oscillations occur.

In FIG. 7, precompensation coefficients for reducing or eliminating thecrosstalk according to the FEXT transfer function of FIG. 6 for thethree frequency regions 84, 85, 86 are shown wherein curve 87 shows thereal part and curve 88 shows the imaginary part of these coefficients.As can be seen in FIG. 7, while oscillations still occur these have alower frequency than the oscillations in the real and imaginary part ofthe FEXT transfer functions.

The coefficients shown in FIG. 7 may be calculated based on the FEXTtransfer function or may be calculated based on error signals asdescribed with reference to FIGS. 2-5.

In embodiments of the present invention, a first subset of thecoefficients, i.e. a part of the coefficients, is determined based onerror signals or other measurements of the crosstalk, and the remainingcoefficients which are comprised in a second subset of coefficients arecalculated based on the first subset of coefficients, for example byusing interpolation. In case of oscillating functions or curves like theone shown in FIG. 7 in some cases with increasing oscillation frequencymore of the coefficients have to be in the first subset in order tomaintain the same overall quality of interpolation or, in other words,more coefficients have to be provided as a basis for interpolation. Insome embodiments, the first subset comprises every N_(int)-thcoefficient, for example every fourth coefficient, every eighthcoefficient, . . . , wherein these numbers are only examples andbasically every suitable number for N_(int) may be used. N_(int) will bealso referred to as the interpolation rate in the following.

In an embodiment, interpolation is performed separately for the realpart and imaginary part of crosstalk precompensation coefficients orcrosstalk cancellation coefficients. In another embodiment, instead ofreal part and imaginary part, magnitude and phase which, as explainedabove, is an alternative way of representing complex numbers, may beused.

In FIG. 8, an embodiment of a filter structure for linear, i.e. firstorder, interpolation for an interpolation rate of N_(int)=4, is shown.Such a filter structure has a so-called length L=2 and may be used bothfor the real part and for the imaginary part. The filter structure mayfor example be implemented by programming a digital signal processor ora general purpose processor accordingly, but may also be implemented asdedicated hardware. In FIG. 8, p(1), 1 being an integer number,represents the 1-th value p, wherein p may be the real or imaginary partof a particular coefficient of channel 1. In an embodiment, each channel1 is associated with a matrix of coefficients. For simplicity ofnotation the subindices of the matrices are omitted in this notation.The values p(k·N_(int)), k being an integer number, i.e. thecoefficients at a corresponding position (i,j) of the matrix of everyN_(int)-th channel, are calculated for example based on error signals.These coefficients are in the embodiment of FIG. 8 fed to a delay unit90 which causes a delay, such that when before delay unit 90 coefficientp(k·N_(int)) is present, after delay unit 90 the previous valuep((k−1)·N_(int)) is present.

The values of p between 1=k·N_(int) and 1=(k−1)·N_(int), i.e. for thecase N_(int)=4 the values p((k−1)·N_(int)+1), p((k−1)·N_(int)+2) andp((k−1)·N_(int)+3) are calculated, and in the structure of FIG. 8additionally p(k·N_(int)) is output. The filter structure shown in FIG.8 comprises four outputs which are outputs of adders 99, 100, 101, 102.To each of adders 99-102, the value before delay unit 90, in the exampleshown p(k·N_(int)), is fed via one of multipliers 91-94 where the valueis multiplied with filter coefficients h₁-h₄, respectively, is fed, andvia multipliers 95-98 the value of the delay unit 90, in this casep((k−1)·N_(int)) multiplied by filter coefficients h₅-h₈ in multipliers95-98, respectively, is fed as shown in FIG. 8.

In the embodiment of FIG. 8, as shown adder 99 outputs p(k·N_(int)),adder 100 outputs p((k−1)·N_(int)+3), adder 101 outputsp((k−1)·N_(int)+2)and adder 102 outputs p((k−1)·N_(int)+1). These valuesin the filter structure of FIG. 8 are calculated as follows:p(k·N _(int))=h ₄ ·p(k·N _(int))+h ₈ ·p((k−1)N _(int))p((k−1)·N _(int)+3)=h ₃ ·p(k·N _(int))+h ₇ ·p((k−1)N _(int))p((k−1)·N _(int)+2)=h ₂ ·p(k·N _(int))+h ₆ ·p((k−1)N _(int))p((k−1)·N _(int)+1)=h ₁ ·p(k·N _(int))+h ₅ ·p((k−1)N _(int))

From the above it follows that h₄=1 and h₈=0. Moreover, for linearinterpolation h₂=h₆=0.5; h₃=h₅=0.75 and h₁=h₇=0.25 are valid. This leadsto an impulse response of the filter shown in FIG. 8 as shown with curve105 in FIG. 9, wherein the integer values on the horizontal axiscorresponds to the indices of the filter coefficient h₁ to h₈ and thevalues on the vertical axis corresponds to the values of thecoefficients. It should be noted that these values serve only as anexample, and other values may also be used if the interpolation is notto be linear. Moreover, the value N_(int)=4 is just an example, and acorresponding filter structure could also be used for interpolation fora different value of N_(int) by increasing or decreasing the number ofmultipliers 91-98 and adders 99-102.

It is to be noted that the interpolation filter structure of FIG. 8 isonly one possible implementation of an interpolation filter, and otherimplementations are equally possible. For example, FIG. 10 shows aninterpolation filter according to another embodiment of the presentinvention which basically has the same impulse response as the filterexplained above with reference to FIGS. 8 and 9.

The filter shown in FIG. 10 is in the so called “normal form” i.e. ithas a chain of delay elements 111-117 between which signals are tappedand multiplied by filter coefficient h₁-h₈ in multipliers 118-125,respectively, wherein the outputs of multipliers 118-125 are added inadder 126. The filter structure of FIG. 10 outputs the values pincluding both the originally calculated values p(k·N_(int)) and theinterpolated values in between. As explained above, p may for example bethe real part or the imaginary part of a precompensation coefficient ora cancellation coefficient. The values p(k·N_(int)) are fed to thefilter. Since in the present case where N_(int)=4 the number of valuesoutput is four times the number of values input, in order to have thesame input rate to the structure as output rate zeros are insertedbetween the values p(k·N_(int)) via a switch 110. This is also referredto as upsampling. In case of N_(int)=4, three zeros are inserted aftereach value p(k·N_(int)).

Above the nodes between, before and after delay elements 111-117,exemplary signal values are shown as an example for a case where thevalue p(k·N_(int)) has been last fed to the chain of delay elements. Inthis case, the output of the filter corresponds toh₁·p(k·N_(int))+h₅·p((k−1)N_(int)) or, in other words, p((k−1)N_(int)+1)is calculated. In a next time step, the values shown would move one nodeto the right in FIG. 10, and a new zero would be fed to the chain ofdelay elements via switch 110. In this case, p((k−1)·N_(int)+2) would beoutput etc.

In the above example, a first order interpolation (L=2) is used. A firstorder interpolation means that two values (for example p(k·N_(int)) andp((k−1)·N_(int))) are used to interpolate the values in between, forexample using linear interpolation as in the examples above. In otherembodiments, other interpolation orders may be used. For example, a zeroorder interpolation (L=1) may be used where for example the valuesp((k−1)·N_(int)+i), i=1, 2, 3 are simply set to p((k−1)·N_(int)) orsimply set to p(k·N_(int)). In still other embodiments, higher orderinterpolations, for example second order interpolation (L=3) or thirdorder interpolation (L=4), may be used. In second order interpolationthree values, for example three compensation or cancellation coefficientvalues, which are determined for example based on an error signal asexplained above are used as a basis for each interpolative value. Forexample, p(k·N_(int)), p((k−1)·N_(int)) and p((k−2)·N_(int)) could beused for determining values of p between p((k−2)·N_(int)) andp(k·N_(int)).

Also, while in the above example N_(int) has been set to four, in otherembodiments other values for N_(int) may be used. As an example, a curve130 in FIG. 11 shows a possible impulse response of a third orderinterpolation filter (L=4) (for example four values calculated based onerror signals are used as a basis for determining each interpolatedvalue) and an interpolation rate N_(int)=32 are shown. In such a case, acorresponding filter in an embodiment has L·N_(int), in this case4·32=128 filter coefficients, which correspond to the values of curve130 at the integer values on the horizontal axis.

For realizing a corresponding interpolation filter, any suitablestructure, for example a normal structure, may be used, or a digitalsignal processor may be programmed accordingly to yield the desiredimpulse response.

In embodiments of the present invention as already mentioned, data istransmitted in certain frequency ranges. For example, as alreadyexplained with reference to FIGS. 6 and 7, data may be transmitted inthe downstream direction in three distinct frequency regions. In someembodiments, for example for higher order interpolation like secondorder interpolation (L=3) or third order interpolation (L=4), at theborders of the frequency regions additional measures are taken forinterpolation. For example, in an embodiment as explained above for afrequency range a grid defining a first subset of channels is given forwhich coefficient values are calculated based on error signals, and inan embodiment additional “virtual” grid values are calculated byextrapolating the grid values to points outside the frequency range.Such an embodiment will be explained with reference to FIG. 12.

In FIG. 12, a desired frequency region is labeled 144. Frequency region144 may for example correspond to one of regions 84, 85 and 86 of FIGS.6 and 7. For this frequency region 144, grid values, i.e. coefficientvalues for channels of the above-defined first subset of channels, arecalculated for example based on error values. These values are labeled135, 136, 137, 138 and 139 in FIG. 12. Additionally, at the end of thefrequency region a last value 140 is provided which may also be seen aspart of the grid. In FIG. 12, between the values 135-140 additionalinterpolated values 143 are determined for example by interpolationfiltering as explained above. In the example shown in FIG. 12,N_(int)=4, i.e. three interpolated values are calculated between eachtwo successive grid values. The reason that in the nomenclature of FIG.12 the last value 140 is not seen as a grid value is that in this casethe total number of values is not such that with the regular spacingshown in FIG. 12 (one grid value every four values or channels) the lastgrid value coincides with the last channel of the desired frequencyregion. Therefore, in the embodiment of FIG. 12 the last channel of thedesired frequency region is additionally attributed to the first subsetof channels, and the number of interpolated values 143 between the lastgrid value 139 and the last value 140 differs from the number ofinterpolated value between two grid values (one interpolated value incontrast to three interpolated values in the example of FIG. 12).However, in other embodiments this additional last value may be omitted,and in still other embodiments the number of overall channels may besuch that the last grid value coincides with the last channel of thedesired frequency region.

In the embodiment currently explained with reference to FIG. 12, ahigher order interpolation, for example a second order interpolation(L=3) where each interpolated value 143 is calculated based on threegrid values, is used. In the embodiment of FIG. 12, as a basis forcalculation of interpolation values at the border regions of frequencyregion 144, for example interpolation values 143 between grid values 135and 136 or interpolation values 143 between grid values 138 and 139 orbetween last grid value 139 and last value 140, additional extended“virtual” grid values 141 and 142 which may be seen as belonging to athird subset of channels are used. These extended virtual grid valuesare determined based on grid values at the border of desired frequencyregion 144. For example, in an embodiment extended virtual grid value141 is determined by linear extrapolation of grid values 135 and 136,and extended virtual grid value 142 is determined based on a linearextrapolation of last grid value 139 and last value 140. In otherembodiments, for example extended virtual grid value 141 could be set tofirst grid value 135 or be calculated based on grid values 135, 136 and137. Corresponding considerations hold true for extended virtual gridvalue 142, which in another embodiment may be set to last value 140 orbe calculated based on more values than values 139 and 140, for examplebased on values 138, 139 and 140. These extended virtual grid values arethen also used as a basis for interpolation, i.e. for determining values143.

In another embodiment, different interpolation filters may be used fordifferent parts of a desired frequency region. Such an embodiment willnow be explained with reference to FIG. 13.

In FIG. 13, a frequency region is shown in which grid values 150 and alast value 151 the function of which basically corresponds to thefunction of grid values 135 to 139 and last value 140 of FIG. 12 areprovided for a first subset of channels. Between grid values 150 andbetween a last grid value 150 and last value 151, interpolated values152 for a second subset of channels are determined using interpolationfilters.

In the embodiment of FIG. 13, for determining interpolation values in aregion 153 between a first grid value 150 and a second grid value 150, afirst filter, which may be referred to as start filter, is used. Forregions 154, 155 and 156 a second filter which may be referred to asmiddle filter is used. For a region 157 which corresponds to the regiondelimited by the last grid value 150 and the grid value preceding thelast grid value, in the embodiment of FIG. 13 a third filter which maybe referred to as end filter is used. Finally, for the region 158between the last grid value 150 and the last value 151 a fourth filterwhich may be referred to as edge filter is used. In the embodiment shownin FIG. 13, the first filter, the second filter and the third filtereach have an interpolation rate N_(int)=4, although other interpolationvalues may be used as well, and the interpolation values of firstfilter, second filter and third filter need not be the same. For fourthfilter which is used for region 158, an interpolation rate N_(int)=1 isused. As already explained with reference to FIG. 12, in otherembodiments no last value 151 is provided, and correspondingly thefourth filter may be omitted.

It should be noted that the embodiments of FIGS. 12 and 13 may becombined with each other, but also may be used separately.

The impulse responses for first filter, second filter, third filter andfourth filter in the embodiment of FIG. 13 vary and may be adapted tothe situation at the specific region. Furthermore, it should be notedwhile a start filter, a middle filter and an end filter is provided inthe embodiment of FIG. 13, in other embodiments the region between thefirst grid value and the last value may be divided in two subregionsinstead of three subregions as in FIG. 13, and a first filter, which maybe referred to as start/middle filter, and a second filter, which may bereferred to as middle/end filter, may be provided to perform theinterpolation in the first subregion and the second subregion in thiscase.

Furthermore, it should be noted that for first filter, second filter,third filter and fourth filter (or any other number of filters used in aspecific embodiment) the same filter structure may be used for which thefilter coefficients are changed for each filtering, or separate filterstructures may be used.

The filter coefficients for such filters, or in other words the impulseresponse of the filters, may for example be determined at a first startof a corresponding communication system. In this case, at the first useof the system for example all coefficients (preceding coefficients orcancellation coefficients) may be determined based on error signals forall channels used, and the coefficients of the interpolation filters arethen determined so that the squared interpolation error for allcoefficients to be interpolated in later uses of the system isminimized. Such a scheme may also be used to determine impulse responsesfor cases where a single interpolation filter is used. In otherembodiments, impulse responses for filters used may be determined basedon simulations for typical systems.

Next, some examples for such impulse responses will be explained withreference to FIGS. 14 and 15.

In FIG. 14, impulse responses of interpolation filters for a length L=3(i.e. second order interpolation) and an interpolation rate ofN_(int)=32 is shown. In this case, the desired frequency region ispartitioned in two subregions, and FIG. 14A shows an impulse response160 for a first filter used for a start and middle region (for examplecorresponding to regions 153, 154 and 155 of FIG. 13), and a curve 161in FIG. 14B shows an impulse response of a filter used for middle andend region, for example regions 156 and 157 in the example of FIG. 13.

In FIG. 15, impulse responses are shown as an example for a third orderinterpolation (L=4) and an interpolation rate of an N_(int)=32. In thisexample, the desired frequency region is partitioned in threesubregions, and a curve 165 in FIG. 15A shows an impulse response for afirst filter corresponding to a start filter, a curve 166 in FIG. 15Bshows the impulse response of a second filter for a middle region, i.e.a middle filter, and a curve 167 in FIG. 15C shows an impulse responsefor a third filter used in an end region, i.e. an end filter asdescribed above.

It should be noted that these impulse responses of FIGS. 14 and 15 serveonly as examples, and other impulse responses may be used adapted to thespecific situations. It is to be noted that for other interpolationrates, similar impulse responses may be used which are scaled toaccommodate more coefficients. For example, in FIG. 14, for L=3 andN_(int)=32 96 coefficients are provided, while for a filter with L=3 andN_(int)=40 120 coefficients would be provided, and in an embodiment theimpulse responses of FIG. 14 could be scaled accordingly. Similarconsiderations hold true for the example of FIG. 15, where for examplefor L=4 and N_(int)=48 192 coefficients would be provided and theimpulse responses would be scaled accordingly.

The impulse responses of FIGS. 14 and 15 have been provided taking aVDSL2 system for downstream preceding and a symbol rate of 8 kHz as anexample. Similar filters may be used in case of an upstream crosstalkcancellation. In other systems, other symbol rates or bandwidth may beused.

In the embodiments described above, it has been assumed that a fixedgrid of channels of a first subset, i.e. channels which are to be usedas a basis for interpolation, is provided. In other embodiments, thegrid may be chosen depending on system parameters. For example, theinterpolation rate N_(int) and therefore the density of the channels ofthe first subset may be chosen depending on line length, signal to noiseratio (SNR) or throughput requirements, wherein for example for lowersignal to noise ratios or higher throughput requirements a lowerinterpolation rate is chosen. The interpolation rate or the frequencygrid of the channels of the first subset may also be adapted during datatransmission, for example as the signal to noise ratio of thecommunication connections, for example communication lines, involvedchanges. For example, in an embodiment, when the signal to noise ratiofalls below a predetermined threshold, the interpolation rate N_(int) isdecreased.

Furthermore, it has to be noted that while in the examples above,crosstalk reduction is performed at a central office, such crosstalkreduction in other embodiments may be performed at any location where ajoint processing of signals sent via two or more lines may be performed,for example at locations where transmitters and/or receivers areco-located.

Furthermore, as already explained above, real and imaginary parts ofcoefficients like pre-compensation coefficients or crosstalkcancellation coefficients may be interpolated separately. For theseseparate interpolations, different interpolation filters using differentfilter coefficients, different interpolation rates and/or differentfilter lengths, i.e. interpolation orders, may be used. As mentionedabove, instead of interpolating real and imaginary parts, phase andmagnitude or any other possible storage format of the coefficients maybe interpolated. In other systems, instead of interpolating thecoefficients, any other crosstalk parameters describing the crosstalkbetween communication connections involved may be interpolated.

While embodiments of methods have been described as comprising a numberof operations or acts, the order such operations are executed in mayvary, and in other embodiments only some of the described operations oracts may be performed, and/or additional operations or acts may beincluded. For example, in embodiments only those operations performed ina central office or only those operations performed in customer premisesequipment may be included.

As can be seen, a plurality of variations and alternatives are possiblewithout departing from the scope of the present invention, which is notintended to be limited by the embodiments and examples described above,but which is intended to be limited only by the appended claims andequivalents thereof.

1. A communication device, comprising: a memory configured to storefirst crosstalk reduction parameters for a first subset of communicationchannels of a plurality of communication connections; an interpolationcircuit to determine second crosstalk reduction parameters for a secondsubset of communication channels of said plurality of communicationconnections based on said first crosstalk reduction parameters; and acrosstalk reduction circuit configured to reduce crosstalk between saidplurality of communication connections based on said first crosstalkreduction parameters and said second crosstalk reduction parameters. 2.The communication device of claim 1, wherein said first subset ofcommunication channels and said second subset of communication channelsform a plurality of communication channels for communicating via saidplurality of communication connections, and wherein the communicationchannels of said first subset are distributed substantially evenly insaid plurality of communication channels.
 3. The communication device ofclaim 1, wherein said interpolation circuit comprises an interpolationfilter, wherein said communication channels of said first subset andsaid second subset are located in a predetermined frequency range, andwherein said interpolation filter comprises separate interpolationfilters for at least two different portions of said frequency range. 4.The communication device of claim 1, wherein said interpolation circuitcomprises an interpolation filter, and wherein said interpolation filteris chosen from the group comprising a linear filter and a higher orderfilter.
 5. The communication device of claim 1, wherein saidinterpolation circuit is configured to assign each second crosstalkreduction parameter a value of an adjacent crosstalk reductionparameter.
 6. The communication device of claim 1, wherein said secondcommunication parameters are complex parameters, and wherein saidinterpolation circuit is configured to determine a real part and animaginary part of said second communication parameters separately. 7.The communication device of claim 1, wherein said second communicationparameters are complex parameters, and wherein said interpolationcircuit is configured to determine a magnitude and a phase of saidsecond communication parameters separately.
 8. The communication deviceof claim 1, wherein said communication channels of said first subset andsaid second subset are arranged in a frequency range, and wherein saidinterpolation circuit is further configured to determine third crosstalkreduction parameters for a third subset of communication channelsoutside said frequency range based on said first crosstalk reductionparameters, and to determine said second crosstalk reduction parametersbased on said first crosstalk reduction parameters and said thirdcrosstalk reduction parameters.
 9. The communication device of claim 1,further comprising receive circuitry configured to receive trainingsignals via a plurality of communication channels comprising saidcommunication channels of said first subset and said second subset ofsaid plurality of communication connections, wherein said communicationdevice is further configured to determine said first crosstalk reductionparameters based on said training signals.